/*
 *  mini-SaaS
 *  Application for developing Software as a Service (SaaS) 
 *  Copyright (c) 2011 Anand Sudhakaran, Bryce Holton, Chao Zhang
 *  ASU
 *
 *  This file is part of mini-SaaS.
 *
 *  mini-SaaS is free software; you can redistribute it and/or modify
 *  it under the terms of the GNU General Public License as published by
 *  the Free Software Foundation; either version 3 of the License, or
 *  (at your option) any later version.
 *  
 *  mini-SaaS is distributed in the hope that it will be useful,
 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *  GNU General Public License for more details.

 *  You should have received a copy of the GNU General Public License
 *  along with mini-SaaS; if not, see <http://www.gnu.org/licenses/>. 
 *
 */
package loginbean;

import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.Vector;

public class GraphicalUserInterface 
{
	private static void insertIntoDataBase(String query)
	{
		try
		{
			DBManager db = new DBManager();
			Connection conn = db.getDatabaseConnection();
			Statement st = conn.createStatement();
			st.execute(query);
			conn.close();
		}
		catch(Exception e)
		{
			e.printStackTrace();
		}
	}
	private static Vector<String> queryDataBase(String query)
	{
		Vector<String> results = new Vector<String>();
		try
		{
			DBManager db = new DBManager();
			Connection conn = db.getDatabaseConnection();
			Statement st = conn.createStatement();
			ResultSet rs = st.executeQuery(query);
			while(rs.next())
			{
				results.addElement(rs.getString(1));
			}
			conn.close();
		}
		catch(Exception e)
		{
			e.printStackTrace();
		}
		return results;
	}
	public static void insertNewGui(int tenantid, String header, String footer, String sidebar)
	{
		String query = "select tenantid from guitable where tenantid = "+tenantid;
		if(queryDataBase(query).size() == 0)
		{
			//insert new entry
			String insertQuery = "insert into guitable (header,footer,sidebar,tenantid) values ('"+header+"','"+footer+"','"+sidebar+"',"+tenantid+")";
			insertIntoDataBase(insertQuery);
		}
		else
		{
			//update existing entry
			String updateQuery = "update guitable set header = '"+header+"', footer = '"+footer+"', sidebar = '"+sidebar+"' "
					+"where tenantid = "+tenantid;
			insertIntoDataBase(updateQuery);
		}
	}
	public static String getHeader(int tenantId)
	{
		String query = "select header from guitable where tenantid = "+tenantId;
		return queryDataBase(query).elementAt(0);
	}
	public static String getFooter(int tenantId)
	{
		String query = "select footer from guitable where tenantid = "+tenantId;
		return queryDataBase(query).elementAt(0);
	}
	public static String getSideBar(int tenantId)
	{
		String query = "select sidebar from guitable where tenantid = "+tenantId;
		return queryDataBase(query).elementAt(0);
	}
}
